1. Technical Field
The present invention relates generally to cellular wireless communication systems, and more particularly to a distinct hardware accelerator component to support error correction, compression and decompression within a wireless terminal of a cellular wireless communication system.
2. Related Art
Cellular wireless communication systems support wireless communication services in many populated areas of the world. While cellular wireless communication systems were initially constructed to service voice communications, they are now called upon to support data and video (multimedia) communications as well. The demand for video and data communication services has exploded with the acceptance and widespread use video capable wireless terminals and the Internet. Video and data communications have historically been serviced via wired connections; cellular wireless users now demand that their wireless units also support video and data communications. The demand for wireless communication system video and data communications will only increase with time. Thus, cellular wireless communication systems are currently being created/modified to service these burgeoning demands. Data compression is particularly useful in communications because it enables wireless providers to service additional wireless terminals by allowing the same information to be sent in fewer bits.
Cellular wireless networks include a “network infrastructure” that wirelessly communicates with wireless terminals within a respective service coverage area. The network infrastructure typically includes a plurality of base stations dispersed throughout the service coverage area, each of which supports wireless communications within a respective cell (or set of sectors). The base stations couple to base station controllers (BSCs), with each BSC serving a plurality of base stations. Each BSC couples to a mobile switching center (MSC). Each BSC also typically directly or indirectly couples to the Internet.
In operation, each base station communicates with a plurality of wireless terminals operating in its cell/sectors. A BSC coupled to the base station routes voice, video, data or multimedia communications between the MSC and a serving base station. The MSC then routes these communications to another MSC or to the PSTN. Typically, BSCs route data communications between a servicing base station and a packet data network that may include or couple to the Internet. Transmissions from base stations to wireless terminals are referred to as “forward link” transmissions while transmissions from wireless terminals to base stations are referred to as “reverse link” transmissions. The volume of data transmitted on the forward link typically exceeds the volume of data transmitted on the reverse link. Such is the case because data users typically issue commands to request data from data sources, e.g., web servers, and the web servers provide the data to the wireless terminals. The great number of wireless terminals communicating with a single base station forces the need to compress the communications and divide the forward and reverse link transmission times amongst the various wireless terminals.
Wireless links between base stations and their serviced wireless terminals typically operate according to one (or more) of a plurality of operating standards. These operating standards define the manner in which the wireless link may be allocated, setup, serviced and torn down. One popular cellular standard is the Global System for Mobile telecommunications (GSM) standard. The GSM standard, or simply GSM, is predominant in Europe and is in use around the globe. While GSM originally serviced only voice communications, it has been modified to also service data communications. GSM General Packet Radio Service (GPRS) operations and the Enhanced Data rates for GSM (or Global) Evolution (EDGE) operations coexist with GSM by sharing the channel bandwidth, slot structure, and slot timing of the GSM standard. GPRS operations and EDGE operations may also serve as migration paths for other standards as well, e.g., IS-136 and Pacific Digital Cellular (PDC).
The GSM standard specifies communications in a time divided format (in multiple channels). The GSM standard specifies a 4.615 ms frame that includes 8 slots of, each including eight slots of approximately 577 μs in duration. Each slot corresponds to a Radio Frequency (RF) burst. A normal RF burst, used to transmit information, typically includes a left side, a midamble, and a right side. The midamble typically contains a training sequence whose exact configuration depends on modulation format used. However, other types of RF bursts are known to those skilled in the art. Each set of four bursts on the forward link carry a partial link layer data block, a full link layer data block, or multiple link layer data blocks. Also included in these four bursts is control information intended for not only the wireless terminal for which the data block is intended but for other wireless terminals as well.
GPRS and EDGE include multiple coding/puncturing schemes and multiple modulation formats, e.g., Gaussian Minimum Shift Keying (GMSK) modulation or Eight Phase Shift Keying (8PSK) modulation. Particular coding/puncturing schemes and modulation formats used at any time depend upon the quality of a servicing forward link channel, e.g., Signal-to-Noise-Ratio (SNR) or Signal-to-Interference-Ratio (SIR) of the channel, Bit Error Rate of the channel, Block Error Rate of the channel, etc. As multiple modulation formats may be used for any RF burst, wireless communication systems require significant processing ability to encode and decode the information contained within the RF bursts. This decision may be further influenced by changing radio conditions and the desired quality level to be associated with the communications.
Data compression is the process of encoding data to reduce the required storage space or transmission time when compared to uncompressed data. This is possible because most real-world data is very redundant or not most concisely represented in its human-interpretable form. One means of compression, is run-length encoding, wherein large runs of consecutive identical data values are replaced by a simple code with the data value and length of the run. This is an example of lossless data compression, where data compresses in such a way that it can be recovered exactly. For symbolic data such as spreadsheets, text, executable programs, etc., loss-less-ness is essential because changing even a single bit cannot be tolerated (except in some limited cases). Other kinds of data such as sounds and pictures, a small loss of quality can be tolerated without losing the essential nature of the data. These methods frequently offer a range of compression efficiencies, where the user can choose whether he wants highly-compressed data with noticeable loss of quality or higher-quality data with less compression. In particular, compression of images and sounds can take advantage of limitations of the human sensory system to compress data in ways that are lossy, but nearly indistinguishable from the original.
However, as wireless terminals are being required to transmit both symbolic data as well as data that can tolerate a small loss of quality without losing the essential nature of the data, lossless compression algorithms such as Lempel-Ziv (LZ) and Lempel-Ziv-Welch (LZW) compression methods are becoming increasing popular in their application to wireless terminals. These methods utilize a table based compression model where table entries are substituted for redundant data. For most methods, this table is generated dynamically from earlier data in the input. Psychoacoustics may be employed to remove non-audible components of the signal to make compression more efficient.
As software is becoming increasingly more powerful with improved microelectronic technologies providing new programmable processors, additional functionalities may be added. These include the application of multimedia content or visual information in a mobile connection. Already today wireless terminals are not limited to only voice communications. Other types of data including real time multimedia may be provided. The need for more efficient communications is much stronger when using a mobile wireless device and reinforces the relevance of compressed communications in a mobile environment. This requires that the communications be of an acceptable quality at low enough rates to be effectively communicated in the cellular wireless environment. However, to achieve low data rates often requires computer intense coding schemes.
These improved coding and decoding abilities create ever-growing demands on the processor within the wireless environment. Unlike a desktop computer coupled to a network via a landline connection a mobile wireless terminal will have a limited data rate between itself and the servicing base station. Additionally, the processors within the wireless terminal are assigned multiple processing duties. The increased coding and decoding associated with these compressed communications require additional processing power in order to maintain real time audio/visual communications. The addition of these processing requirements within the wireless terminal requires new methods with which to balance the processing requirements of the system processor while maintaining these real time audio/visual communications.